#ifndef __SL51_H__
#define __SL51_H__

#include "intrins.h"
/*电机驱动IO定义*/
sbit D1 = P1 ^ 3; //为1 左电机正转
sbit D2 = P1 ^ 4; //为1 左电机反转
sbit D3 = P1 ^ 5; //为1 右电机正转
sbit D4 = P1 ^ 6; //为1 右电机反转
sbit EN1 = P1 ^ 2;//左电机使能
sbit EN2 = P1 ^ 7;//右电机使能
/*sbit D5 = P1 ^ 4; //为1 左前电机正转
sbit D6 = P1 ^ 5; //为1 左前电机反转
sbit D7 = P1 ^ 6; //为1 右前电机正转
sbit D8 = P1 ^ 7; //为1 右前电机反转*/
sbit left_led = P2 ^ 3; //左寻迹信号 为0 没有识别到黑线 为1识别到黑线
sbit right_led = P2 ^ 1;//右寻迹信号 为0 没有识别到黑线 为1识别到黑线
sbit left_led_button = P2 ^ 2; //左避障开关
sbit right_led_button = P2 ^ 0;//右避障开关
//sbit left_led3 = P3 ^ 3; //左上避障信号 为0 识别障碍物 为1没有识别到障碍物
//sbit right_led3 = P3 ^ 7;//右上避障信号 为0 识别障碍物 为1没有识别到障碍物
//sbit forth = P3 ^ 6;				 //前避障信号 为0 识别障碍物 为1没有识别到障碍物
sbit E = P3 ^ 6;             //前避障信号 为0 识别障碍物 为1没有识别到障碍物
sbit trig1 = P2 ^ 5;//超声波1中发射端
sbit echo1 = P2 ^ 6;//超声波1中接收端
sbit trig2 = P2 ^ 2;//超声波2左发射端
sbit echo2 = P2 ^ 3;//超声波2左接收端
sbit trig3 = P2 ^ 0;//超声波3右发射端
sbit echo3 = P2 ^ 1;//超声波3右接收端
sbit ServoPin = P2 ^ 7;//云台电机控制端
sbit zuo = P2 ^ 4;//左边红外线传感器 为0识别障碍物 为1没有识别障碍物
sbit hou = P0 ^ 2;//后碰撞开关
sbit qian=P0^1;//前碰撞开关
sbit youq=P0^3;//右前碰撞开关

/*按键定义*/
sbit key_s2 = P3 ^ 0;
sbit key_s3 = P3 ^ 1;
sbit beep = P1 ^ 0;//蜂鸣器


#define stop1	D1 = 0, D2 = 0//左电机停止
#define stop2	D3 = 0, D4 = 0//右电机停止
//#define stop3	D1 = 0, D2 = 0//左后电机停止
//#define stop4	D3 = 0, D4 = 0//右后电机停止


#define go1		D1 = 1, D2 = 0//左电机正传
#define go2  	D3 = 0, D4 = 1//右电机正传
//#define go3		D1 = 1, D2 = 0//左后电机正传
//#define go4		D3 = 1, D4 = 0//右后电机正传
#define back1		D1 = 0, D2 = 1//左电机反传
#define back2		D3 = 1, D4 = 0//右电机反传
//#define back3		D1 = 0, D2 = 1//左后电机反传
//#define back4		D3 = 0, D4 = 1//右后电机反传

#endif